package com.smooware.icms.service;

import com.smooware.icms.fragment.sync.AuthorizationFragment;

public interface AuthorizationServiceBinder {

	/**
	 * Checks if the synchronization process in service is completed.
	 * 
	 * @return true if synchronization process is completed, false otherwise.
	 */
	boolean isSynchronizationComplete();

	/**
	 * Registers {@link AuthorizationFragment} as observer.
	 * 
	 * @param fragment
	 *            to be registered.
	 */
	void registerFragmentObserver(final AuthorizationFragment fragment);

	/**
	 * Removes {@link AuthorizationFragment} from observers.
	 * 
	 * @param fragment
	 *            to be unregistered
	 */
	void unregisterFragmentObserver(final AuthorizationFragment fragment);

	/**
	 * forces start of authorization process in service.
	 */
	void startAuthorizationProcess();
}
